package com.tyj.movie.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.tyj.movie.entity.Movie;
import com.baomidou.mybatisplus.extension.service.IService;
import com.tyj.movie.mapper.MovieMapper;
import com.tyj.movie.util.R;
import com.tyj.movie.vo.CinemasMovieVo;
import com.tyj.movie.vo.MainPageMovieVo;
import com.tyj.movie.vo.MovieDetailVo;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.HashMap;
import java.util.List;
import java.util.concurrent.ExecutionException;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author tyj
 * @since 2021-06-28
 */
public interface MovieService extends IService<Movie> {

    HashMap<String,Object> queryHotShowMovie();

    HashMap<String,Object> queryComingMovies();

    List<Movie> queryHotMovies();

    HashMap<String,Object> updateHotShowMovie();

    HashMap<String,Object> updateComingMovies();

    List<Movie> updateHotMovies();

    MovieDetailVo queryMovieDetail(Long id) throws ExecutionException, InterruptedException;

    R wantSee(Long id);

    void statCommentLevel();

    IPage<Movie> conditionQueryMovie(String movieShow, String movieType, String movieArea, String movieSort,Long pageNum);

    CinemasMovieVo queryCinemasMovieVo(Long movieId);
}
